package com.ys.entity.storage;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TCC_AllocateDetail", catalog="Id")
public class TccAllocateDetail extends BaseEntity<TccAllocateDetail> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="BidAllocate", nameJava="bidAllocate", typeDataBase="varchar")
	private String bidAllocate;
	@YsField(nameDataBase="VgsbmFrom", nameJava="vgsbmFrom", typeDataBase="varchar")
	private String vgsbmFrom;
	@YsField(nameDataBase="VgsjcFrom", nameJava="vgsjcFrom", typeDataBase="varchar")
	private String vgsjcFrom;
	@YsField(nameDataBase="VgsbmTo", nameJava="vgsbmTo", typeDataBase="varchar")
	private String vgsbmTo;
	@YsField(nameDataBase="VgsjcTo", nameJava="vgsjcTo", typeDataBase="varchar")
	private String vgsjcTo;
	@YsField(nameDataBase="DepotId", nameJava="depotId", typeDataBase="varchar")
	private String depotId;
	@YsField(nameDataBase="DepotName", nameJava="depotName", typeDataBase="varchar")
	private String depotName;
	@YsField(nameDataBase="ProductCode", nameJava="productCode", typeDataBase="varchar")
	private String productCode;
	@YsField(nameDataBase="ProductName", nameJava="productName", typeDataBase="varchar")
	private String productName;
	@YsField(nameDataBase="SinglePrice", nameJava="singlePrice", typeDataBase="decimal")
	private BigDecimal singlePrice;
	@YsField(nameDataBase="Num", nameJava="num", typeDataBase="int")
	private Integer num;
	@YsField(nameDataBase="StateDistribute", nameJava="stateDistribute", typeDataBase="tinyint")
	private Integer stateDistribute;
	@YsField(nameDataBase="PreAllocatePublishNum", nameJava="preAllocatePublishNum", typeDataBase="int")
	private Integer preAllocatePublishNum;
	@YsField(nameDataBase="DistributeNum", nameJava="distributeNum", typeDataBase="int")
	private Integer distributeNum;
	@YsField(nameDataBase="MayDistributeNum", nameJava="mayDistributeNum", typeDataBase="int")
	private Integer mayDistributeNum;
	@YsField(nameDataBase="AllocateCancelNum", nameJava="allocateCancelNum", typeDataBase="int")
	private Integer allocateCancelNum;
	@YsField(nameDataBase="PreAllocatePublishItemId", nameJava="preAllocatePublishItemId", typeDataBase="bigint")
	private Long preAllocatePublishItemId;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TccAllocateDetail setId(Long id) {
		this.id = id;
		return this;
	}
	public String getBidAllocate() {
		return bidAllocate;
	}
	public TccAllocateDetail setBidAllocate(String bidAllocate) {
		this.bidAllocate = bidAllocate;
		return this;
	}
	public String getVgsbmFrom() {
		return vgsbmFrom;
	}
	public TccAllocateDetail setVgsbmFrom(String vgsbmFrom) {
		this.vgsbmFrom = vgsbmFrom;
		return this;
	}
	public String getVgsjcFrom() {
		return vgsjcFrom;
	}
	public TccAllocateDetail setVgsjcFrom(String vgsjcFrom) {
		this.vgsjcFrom = vgsjcFrom;
		return this;
	}
	public String getVgsbmTo() {
		return vgsbmTo;
	}
	public TccAllocateDetail setVgsbmTo(String vgsbmTo) {
		this.vgsbmTo = vgsbmTo;
		return this;
	}
	public String getVgsjcTo() {
		return vgsjcTo;
	}
	public TccAllocateDetail setVgsjcTo(String vgsjcTo) {
		this.vgsjcTo = vgsjcTo;
		return this;
	}
	public String getDepotId() {
		return depotId;
	}
	public TccAllocateDetail setDepotId(String depotId) {
		this.depotId = depotId;
		return this;
	}
	public String getDepotName() {
		return depotName;
	}
	public TccAllocateDetail setDepotName(String depotName) {
		this.depotName = depotName;
		return this;
	}
	public String getProductCode() {
		return productCode;
	}
	public TccAllocateDetail setProductCode(String productCode) {
		this.productCode = productCode;
		return this;
	}
	public String getProductName() {
		return productName;
	}
	public TccAllocateDetail setProductName(String productName) {
		this.productName = productName;
		return this;
	}
	public BigDecimal getSinglePrice() {
		return singlePrice;
	}
	public TccAllocateDetail setSinglePrice(BigDecimal singlePrice) {
		this.singlePrice = singlePrice;
		return this;
	}
	public Integer getNum() {
		return num;
	}
	public TccAllocateDetail setNum(Integer num) {
		this.num = num;
		return this;
	}
	public Integer getStateDistribute() {
		return stateDistribute;
	}
	public TccAllocateDetail setStateDistribute(Integer stateDistribute) {
		this.stateDistribute = stateDistribute;
		return this;
	}
	public Integer getPreAllocatePublishNum() {
		return preAllocatePublishNum;
	}
	public TccAllocateDetail setPreAllocatePublishNum(Integer preAllocatePublishNum) {
		this.preAllocatePublishNum = preAllocatePublishNum;
		return this;
	}
	public Integer getDistributeNum() {
		return distributeNum;
	}
	public TccAllocateDetail setDistributeNum(Integer distributeNum) {
		this.distributeNum = distributeNum;
		return this;
	}
	public Integer getMayDistributeNum() {
		return mayDistributeNum;
	}
	public TccAllocateDetail setMayDistributeNum(Integer mayDistributeNum) {
		this.mayDistributeNum = mayDistributeNum;
		return this;
	}
	public Integer getAllocateCancelNum() {
		return allocateCancelNum;
	}
	public TccAllocateDetail setAllocateCancelNum(Integer allocateCancelNum) {
		this.allocateCancelNum = allocateCancelNum;
		return this;
	}
	public Long getPreAllocatePublishItemId() {
		return preAllocatePublishItemId;
	}
	public TccAllocateDetail setPreAllocatePublishItemId(Long preAllocatePublishItemId) {
		this.preAllocatePublishItemId = preAllocatePublishItemId;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TccAllocateDetail setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TccAllocateDetail setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TccAllocateDetail setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TccAllocateDetail tccAllocateDetail(
		String bidAllocate,
		String vgsbmFrom,
		String vgsjcFrom,
		String vgsbmTo,
		String vgsjcTo,
		String depotId,
		String depotName,
		String productCode,
		String productName,
		BigDecimal singlePrice,
		Integer num,
		Integer stateDistribute,
		Integer preAllocatePublishNum,
		Integer distributeNum,
		Integer mayDistributeNum,
		Integer allocateCancelNum,
		Long preAllocatePublishItemId,
		Integer status
			) {
		TccAllocateDetail entity = new TccAllocateDetail();
		entity.setBidAllocate(bidAllocate);
		entity.setVgsbmFrom(vgsbmFrom);
		entity.setVgsjcFrom(vgsjcFrom);
		entity.setVgsbmTo(vgsbmTo);
		entity.setVgsjcTo(vgsjcTo);
		entity.setDepotId(depotId);
		entity.setDepotName(depotName);
		entity.setProductCode(productCode);
		entity.setProductName(productName);
		entity.setSinglePrice(singlePrice);
		entity.setNum(num);
		entity.setStateDistribute(stateDistribute);
		entity.setPreAllocatePublishNum(preAllocatePublishNum);
		entity.setDistributeNum(distributeNum);
		entity.setMayDistributeNum(mayDistributeNum);
		entity.setAllocateCancelNum(allocateCancelNum);
		entity.setPreAllocatePublishItemId(preAllocatePublishItemId);
		entity.setStatus(status);
		return entity;
	}
}